Device, system, and method of bidirectional wireless communication

ABSTRACT

Device, system and method of bidirectional wireless communication. In some demonstrative embodiments a method may include, for example, receiving by a wireless communication relay node a superimposed transmission corresponding to first and second transmissions from first and second wireless communication nodes, respectively, wherein the first transmission includes a first packet intended at least for a third wireless communication node; and broadcasting a broadcast transmission including the superimposed transmission from the relay node to a set of two or more wireless communication nodes including the third wireless communication node. Other embodiments are described and claimed.

BACKGROUND

Bidirectional wireless communication is commonly used in many wirelesscommunication applications, e.g., voice, mesh, backbone, and the like.It is desired to achieve a relatively high throughput of thebidirectional communications.

A bidirectional wireless communication scheme may be implemented, forexample, to wirelessly exchange first and second packets, denoted a andb, respectively, between first and second nodes, denoted A and B,respectively. For example, during a first time slot, node A sends thepacket a to a relay station, denoted R; during a second time slot node Bsends the packet b to relay station R; during a third time slot therelay station R applies a modulo two operation on binary field (XOR)operation to the packets a and b, and broadcasts the result of the XORoperation to both nodes A and B. After reception of the broadcastpacket, node A may decode the packet b by applying a XOR operation tothe received packet and the packet a; and node B may decode the packet aby applying a XOR operation to the received packet and the packet b.

BRIEF DESCRIPTION OF THE DRAWINGS

For simplicity and clarity of illustration, elements shown in thefigures have not necessarily been drawn to scale. For example, thedimensions of some of the elements may be exaggerated relative to otherelements for clarity of presentation. Furthermore, reference numeralsmay be repeated among the figures to indicate corresponding or analogouselements. The figures are listed below.

FIG. 1 is a schematic block diagram illustration of a wirelesscommunication system in accordance with one demonstrative embodiment;

FIG. 2 a is a schematic block diagram illustration of a wirelesscommunication system in accordance with another demonstrativeembodiment;

FIG. 2 b is a schematic block diagram illustration of a wirelesscommunication system in accordance with yet another demonstrativeembodiment;

FIG. 3 a is a schematic block diagram illustration of a wirelesscommunication system in accordance with yet another demonstrativeembodiment;

FIG. 3 b is a schematic block diagram illustration of a wirelesscommunication system in accordance with yet another demonstrativeembodiment;

FIG. 4 is a schematic block diagram illustration of a wirelesscommunication system in accordance with yet another demonstrativeembodiment;

FIG. 5 is a schematic flow-chart illustration of a method of wirelesscommunication in accordance with one demonstrative embodiment; and

FIG. 6 is a schematic flow-chart illustration of a method of wirelesscommunication in accordance with another demonstrative embodiment.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth in order to provide a thorough understanding of some embodiments.However, it will be understood by persons of ordinary skill in the artthat embodiments of the invention may be practiced without thesespecific details. In other instances, well-known methods, procedures,components, units and/or circuits have not been described in detail soas not to obscure the discussion.

Discussions herein utilizing terms such as, for example, “processing,”“computing,” “calculating,” “determining,” “establishing”, “analyzing”,“checking”, or the like, may refer to operation(s) and/or process(es) ofa computer, a computing platform, a computing system, or otherelectronic computing device, that manipulate and/or transform datarepresented as physical (e.g., electronic) quantities within thecomputer's registers and/or memories into other data similarlyrepresented as physical quantities within the computer's registersand/or memories or other information storage medium that may storeinstructions to perform operations and/or processes. The terms“plurality” and “a plurality” as used herein includes, for example,“multiple” or “two or more”. For example, “a plurality of items”includes two or more items.

Some embodiments may be used in conjunction with various devices andsystems, for example, a Personal Computer (PC), a desktop computer, amobile computer, a laptop computer, a notebook computer, a tabletcomputer, a server computer, a handheld computer, a handheld device, aPersonal Digital Assistant (PDA) device, a handheld PDA device, anon-board device, an off-board device, a hybrid device, a vehiculardevice, a non-vehicular device, a mobile or portable device, anon-mobile or non-portable device, a wireless communication station, awireless communication device, a wireless Access Point (AP), a wired orwireless router, a wired or wireless modem, a wired or wireless network,a Local Area Network (LAN), a Wireless LAN (WLAN), a Metropolitan AreaNetwork (MAN), a Wireless MAN (WMAN), a Wide Area Network (WAN), aWireless WAN (WWAN), a Personal Area Network (PAN), a Wireless PAN(WPAN), One way and/or two-way radio communication systems, cellularradio-telephone communication systems, a cellular telephone, a wirelesstelephone, a Personal Communication Systems (PCS) device, a PDA devicewhich incorporates a wireless communication device, a mobile or portableGlobal Positioning System (GPS) device, a device which incorporates aGPS receiver or transceiver or chip, a device which incorporates an RFIDelement or chip, a Multiple Input Multiple Output (IMO) transceiver ordevice, a wired or wireless handheld device (e.g., BlackBerry, PalmTreo), a Wireless Application Protocol (WAP) device, or the like. Typesof WLAN and/or WMAN communication systems intended to be within thescope of the present invention include, although are not limited to,WLAN and/or WMAN communication systems as described by “IEEE-Std 802.16,2004 Edition, Air Interface for Fixed Broadband Wireless Access Systems”standard (“the 802.16 standard”), and more particularly in “IEEE-Std802.16j, Amendment to IEEE Standard for Local and Metropolitan AreaNetworks—Part 16: Air Interface for Fixed and Mobile Broadband WirelessAccess Systems—Multihop Relay Specification”, “IEEE-Std 802.16m, AirInterface for Fixed Broadband Wireless Access Systems—Advanced AirInterface”, and the like, and/or future versions and/or derivativesand/or Long Term Evolution (LTE) of the above standards.

Some embodiments may be used in conjunction with one or more types ofwireless communication signals and/or systems, for example, RadioFrequency (RF), Infra Red (IR), Frequency-Division Multiplexing (FDM),Orthogonal FDM (OFDM), Time-Division Multiplexing (TDM), Time-DivisionMultiple Access (TDMA), Extended TDMA (E-TDMA), General Packet RadioService (GPRS), extended GPRS, Code-Division Multiple Access (CDMA),Wideband CDMA (WCDMA), CDMA 2000, Multi-Carrier Modulation (MDM),Discrete Multi-Tone (DMT), Bluetooth, Global Positioning System (GPS),Wi-Fi, Wi-Max, ZigBeeM, WilD, Ultra-Wideband (UWB), Global System forMobile communication (GSM), Enhanced Data GSM Environment (EDGE), 2G,2.5G, 3G, 3.5G, or the like. Some embodiments may be used in variousother devices, systems and/or networks.

Reference is now made to FIG. 1, which schematically illustrates abidirectional wireless communication system 100 in accordance with onedemonstrative embodiment.

In some demonstrative embodiments, communication system 100 may includea first node 102, denoted A; a second node 104, denoted D; a third node106, denoted B; a fourth node 108, denoted C; and a relay node 110,denoted R, as described in detail below.

In some demonstrative embodiments, nodes 102 and 104 may be part of afirst neighborhood 112, e.g., a first wireless communication cell; nodes106 and 108 may be part of a second neighborhood 114, e.g., a secondwireless communication cell. Relay node 110 may be located, for example,between neighborhoods 112 and 114, e.g., at substantially equaldistances from neighborhoods 112 and 114. Accordingly, nodes 102 and/or104 may not be able to directly communicate with nodes 106 and/or 108.

In some demonstrative embodiments, system 100 may exchange a firstpacket, denoted a, from node 102 to node 106; and a second packet,denoted c, from node 108 to node 104 via relay node 110, for example,during two communication time periods (“slots”), e.g., as describedbelow.

In some demonstrative embodiments, during a first time slot, denoted T1,nodes 102 and 108 may transmit the packets a and c, respectively, torelay node 110, e.g., substantially simultaneously. In somedemonstrative embodiments, node 104 may overhear the transmission ofpacket a; and/or node 106 may overhear the transmission of packet c.

In some demonstrative embodiments, nodes 104 and 106 may decode thepackets a and c, respectively, e.g., as described below. For example,node 104 may be subject to a relatively low interference resulting fromthe transmission of the packet c from node 108 to relay node 110, e.g.,since relay node 110 and node 108 may be at a greater distance from node104 compared to the distance between nodes 102 and 104. Node 106 may besubject, for example, to a relatively low interference resulting fromthe transmission of the packet a from node 102 to relay node 110, e.g.,since relay node 110 and node 102 may be at a greater distance from node106 compared to the distance between nodes 106 and 108. For example,during the time slot T1 node 104 may overhear a signal equal to thesuperimposition of the packets a and c, e.g., g_(A→D)a+g_(C→D)c, whereing_(A→D) denotes a channel response between the nodes A and D, andg_(C→D) denotes a channel response between the nodes C and D; and node106 may overhear a signal equal to the superimposition of the packets aand c, e.g., g_(A→B)a+g_(C→B)c, wherein g_(A→B) denotes a channelresponse between the nodes A and B, and g_(C→B) denotes a channelresponse between the nodes C and B.

In some demonstrative embodiments, during the time slot T1 relay node110 may receive the superimposed transmission g_(A→R)a+g_(C→R)c, whereing_(A→R) denotes a channel response between the nodes A and R, andg_(C→R) denotes a channel response between the nodes C and R.

In some demonstrative embodiments, during a second time slot, denotedT2, following the time slot T1, relay node 110 may broadcast thesuperimposed transmission g_(A→R)a+g_(C→R)c to both nodes 104 and 106.Accordingly, in the time slot T2 node 106 may receive the transmissiong_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a, wherein g_(R→B) denotes a channelresponse between the nodes R and B; and node 104 may receive thetransmission g_(R→D)g_(A→R)a+g_(R→D)g_(C→R)c, wherein g_(R→D) denotes achannel response between the nodes R and D.

In the above description, a channel response, denoted g_(X→Y), between afirst node, denoted X, and a second node, denoted Y, may include aneffect of the transmission power from the node X. The channel responseg_(X→Y) may be greater than a concatenated channel response, denotedg_(Y→X)g_(X→Y), wherein g_(Y→Z) denotes a channel response between thenode Y and a third node, denoted Z, if, for example, the effect of thetransmission power is not included, since substantially any channelresponse may have a value which is less than one.

The channel response g_(X→Y) may include a scalar, for example, if onetransmit antenna and one receive antenna are implemented. The channelresponse g_(X→Y) may include a vector, for example, if one transmitantenna and multiple receive antennas, or multiple transmit antennas andone receive antenna are implemented. The channel response g_(X→Y) mayinclude a matrix, for example, if multiple transmit antennas andmultiple receive antennas are implemented.

In some demonstrative embodiments, node 106 may detect the packet cbased on the transmission g_(C→B)c+g_(A→B)a overheard by node 106 duringthe time slot T1 and/or the signal g_(R→B)g_(C→R)c+g_(R→B)g_(A→R)areceived by node 106 during the time slot T2. For example, node 106 maydetect the packet c by performing hybrid automatic repeat request(H-ARQ) combining over the transmissions g_(C→B)c+g_(A→B)a andg_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a. Node 104 may detect the packet a basedon the transmission g_(A→D)a+g_(C→D)c overheard by node 104 during thetime slot T1 and/or the signal g_(R→D)g_(A→R)a+g_(R→D)g_(C→R)c receivedby node 104 during the time slot T2. For example, node 104 may detectthe packet a by performing H-ARQ combining over the transmissionsg_(A→D)a+g_(C→D)c and g_(R→D)g_(A→R)a+g_(R→D)g_(C→R)c.

In some demonstrative embodiments, node 106 may decode the packet abased on the decoded packet c, and/or node 104 may decode the packet cbased on the decoded packet al.

In some demonstrative embodiments, node 106 may treat the superimposedsignal g_(R→B)g_(C→R)c+g_(R→B)g_(A→R) as a combination of a transmissionof the packet a over a channel having a channel response g_(R→B)g_(A→R)(“the packet transmission”), an interfering transmission of the packet cover a channel having a channel response g_(R→B)g_(C→R) (“theinterfering transmission”). Node 106 may implement any suitableinterference mitigation scheme or method to reduce or cancel theinterfering transmission to the packet transmission. In one example,node 106 may detect the packet c, e.g., as described above. The channelresponse g_(R→B)g_(C→R) may be estimated by node 106, e.g., by treatingthe data of the detected packet c as training pilots, and treating thepacket transmission as noise. After estimating the channel responseg_(R→B)g_(C→R), node 106 may reconstruct the interfering transmission,for example, by applying the estimated channel response g_(R→B)g_(C→R)to the detected packet c. The reconstructed interfering signal,g_(R→B)g_(C→R)c, may be subtracted from the superimposed transmissiong_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a. Node 106 may then detect the packet ausing any suitable detection method.

In some demonstrative embodiments, node 106 may estimate the channelresponses g_(R→B)g_(C→R) affecting the packet c in the superimposedtransmission g_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a, and the channel responseg_(C→B) affecting the packet c in the overheard transmissiong_(C→B)c+g_(A→B).

In some demonstrative embodiments, node 106 may receive two sets oftransmissions containing information about the packet a, e.g., thetransmissions g_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a and g_(C→B)c+g_(A→B)a, asdescribed above.

In some demonstrative embodiments, node 106 may treat the packet a asinterference in both transmissions g_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a andg_(C→B)c+g_(A→B)a, to determine any suitable detection informationrelating to the packet c. For example, node 106 may estimate the channelresponses g_(R→B)g_(C→R) and g_(C→B). For example, node 106 maydetermine for each codebit of the packet c two log-likelihood ratiosbased on the transmissions g_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a andg_(C→B)c+g_(A→B)a, respectively. Node 106 may use the detectioninformation of the two transmissions to decode the packet c. Forexample, the two log-likelihood ratios of each codebit of the packet cmay be combined to generate a combined log-likelihood ratio of thecodebit. The combined log-likelihood ratios may be used by a channeldecoder to decode the information bits of the packet c. Node 106 ayobtain a relatively good and rough estimate of the packet c based on thetransmission g_(C→B)c+g_(A→B)a, by treating g_(A→B)a as noise, forexample, since the channel response g_(C→B)c may be stronger than thechannel response g_(A→B)a in the transmission g_(C→B)c+g_(A→B)a. Therough estimate of the packet c may be used to help the channelestimation of g_(C→B)g_(C→R) in the transmissiong_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a. For example, the rough estimate ofpacket c may be treated as the exact and the packet c in thetransmission g_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a may be treated as channelsounding for the channel g_(R→B)g_(C→R).

in some demonstrative embodiments, node 106 may reconstruct theinterference signal from the packet c using the decoded information bitsof packet c; remove the interference for the received signalsg_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a and g_(C→B)c+g_(A→B)a; and obtain theinterference-free signals g_(R→B)g_(A→R)a and g_(A→B)a.

In some demonstrative embodiments, each of the two interference-freesignals may include, e.g., separately, detection information of thepacket a, e.g., log-likelihood ratio of codebits of the packet al. Thedetection information of the two interference-free signals may becombined to detect the data in packet al. For example, the twolog-likelihood ratios of each codebit may be combined to generate acombined log-likelihood ratio of the codebit; and the combinedlog-likelihood ratios may be used, e.g., by the channel decoder, todecode the information bit in the packet al.

In some demonstrative embodiments the above-described operations may berepeated by node 106, e.g., iteratively. For example, after removing theinterferences from the packet a in g_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a andg_(C→B)c+g_(A→B)a, e.g., using the decoded information about the packeta, node 106 may re-decode packet c. Optimum performance may be achieved,for example, by the joint detection and channel estimation of packets aand c and channels g_(R→B)g_(C→R), g_(R→B)g_(A→R), g_(C→B), g_(A→B)using the two signals g_(R→B)g_(C→R)c+g_(R→B)g_(A→R)a andg_(C→B)c+g_(A→B)a. However, the joint process may be of high complexity.

In some demonstrative embodiments, relay node 110 may not be required todecode the packets transmitted by nodes 102 and 108 during the time slotT1. A transmit power of relay node 110 is shared by the broadcasttransmission to both nodes 104 and 106. Accordingly, the power of thebroadcast transmission received by nodes 104 and 106 may be reduced by50% compared to a conventional bidirectional communication scheme. Sincechannel capacity is a concave function of signal power, the time slotreduction compared to the conventional communication scheme maycompensate for the power reduction resulting in the transmissionsreceived by nodes. Although the above description relates to a singlerelay node 110, in other embodiments multiple relay nodes may beimplemented, e.g., to increase performance. For example, the multiplerelay stations may substantially simultaneously receive and transmiteach signal, and the received power at the destination stations may beincreased, for example, as a factor of the number of relay stations.Additionally or alternatively, Multiple-input Multiple-Output (IMO)antenna schemes may be implemented. In such case, the scalar channel andscalar signal are replaced by channel matrix and signal vectorrespectively.

In some demonstrative embodiments, nodes 102 and 104 may be combined aspart of node A, and nodes 106 and 108 may be combined as part of node B.Accordingly, nodes A and B may simultaneously transmit the packets a andc to relay node 110 during the time slot T1. Relay node 110 may thenbroadcast the superimposed transmission to both nodes A and B during thetime slot T2. The signal to noise ratio (SNR) associated with the nodesA, B, and R may be determined, for example, as follows:

$\begin{matrix}{\gamma_{R} = \frac{E_{s}\left( {{g_{B->R}}^{2} + {g_{A->R}}^{2}} \right)}{\sigma_{0}^{2}}} & (1) \\{\gamma_{A} = \frac{E_{s}\frac{{g_{B->R}}^{2}}{{g_{B->R}}^{2} + {g_{A->R}}^{2} + \sigma_{0}^{2}}}{{{g_{R->A}}^{2}\sigma_{0}^{2}} + \sigma_{B}^{2} + \sigma_{0}^{2}}} & (2) \\{\gamma_{B} = \frac{E_{s}\frac{{g_{A->R}}^{2}}{{g_{A->R}}^{2} + {g_{B->R}}^{2} + \sigma_{0}^{2}}}{{{g_{R->B}}^{2}\sigma_{0}^{2}} + \sigma_{A}^{2} + \sigma_{0}^{2}}} & (3)\end{matrix}$

wherein σ₀ ² denotes a noise power at the receiver; σ_(A) ² and σ_(B) ²denote residual interference after cancellation; and E_(S) denotes thetransmission power of all nodes.

In some demonstrative embodiments, space-time coding or repetitioncoding may be added to the broadcast transmission from node 110 to nodes102 and 106. In some embodiments, the transmission power of the relaynode 110 may be increased and/or coding redundancy may be added to thebroadcast transmission from node 110. The coding may be performed inspace and/or time domains. For example, node 110 may repeat thebroadcast of some portion of the superimposed signal received by node110 during time slot T1. In one example, node 110 may use the receivedsuperimposed symbols as input to a space-time block code; encode theinput symbols; and broadcast the coded symbols. In another example, node110 may puncture the received symbols and broadcast the remainingtransmission, e.g., if the transmission power of node 110 is higher thanthe transmission power of the nodes, which transmitted the packets a andc. In some embodiments, multiple relay nodes may be implemented toperform space-time coding by sharing all the antennas on each relaynode.

In some demonstrative embodiments, coding may increase the transmissiontime and thus reduce throughput. In some embodiments, multiple relaynodes may be used to boost the signal power. For example, two or morerelay nodes may be identified, e.g., before the transmission of thepackets a and c. The relay nodes may receive and broadcast the receivedsignal simultaneously.

Reference is made to FIG. 2A, which schematically illustrates abidirectional wireless communication system 200 in accordance withanother demonstrative embodiment.

In some demonstrative embodiments, communication system 200 may includea first node 202, denoted A; a second node 204, denoted B; a third node206, denoted D; and a fourth node 208, denoted C, as described in detailbelow.

In some demonstrative embodiments, nodes 202 and 204 may includeneighboring nodes as part of a first neighborhood 212, e.g., a firstwireless communication cell; and nodes 206 and 208 may includeneighboring nodes as part of a second neighborhood 214, e.g., a secondwireless communication cell.

In some demonstrative embodiments, system 200 may exchange a firstpacket, denoted a, from node 202 to node 206; and a second packet,denoted d, from node 206 to node 202, for example, during twocommunication time slots, e.g., as described below.

In some demonstrative embodiments a data rate within neighborhoods 212and 214 may be much higher than a data rate between neighborhoods 212and 214, e.g., due to path loss. For example, within neighborhoods 212and 214 the modulation and/or number of spatial data streams may be 256QAM and 4, respectively, while the modulation and/or number of spatialdata streams between neighborhoods 212 and 214 may be QPSK and 1,respectively. Accordingly, a data rate within neighborhoods 212 and 214may be, for example, at least ten times higher than the data ratebetween neighborhoods 212 and 214. Accordingly, the time required forperforming the transmission of the packets a and d may be dominated bythe transmission time between neighborhoods 212 and 214, while thetransmission time within neighborhoods 212 and 214 may be negligible. Insome demonstrative embodiments, system 200 may enable increasing theexchange throughput between nodes of neighborhoods 212 and 214, e.g.,compared to an exchange throughput achieved by conventional TimeDivision Duplexing (TDD) communication methods.

In some demonstrative embodiments, during a first time slot, denoted T1,nodes 202 and 206 may transmit the packets a and d, respectively, tonodes 204 and 208, respectively, e.g., substantially simultaneously.Nodes 202 and 206 may transmit the packets a and d using high datarates. MIMO transmission may be employed due to high SNR. It is notedthat the requirement of error vector magnitude (EVM) does not increasewith the number of data streams. On the other hand, decoding a biggerQAM symbol may require higher SNR, which also requires a better EVM atthe transmitter ends. Since typical EVM is in the range of −35 dB,increasing number of spatial streams may be a better way to exploit SNRhigher than about 35 dB. The transmissions of the packets a and d fromnodes 202 and 206 may be performed according to a time division scheme,or simultaneously, e.g., if interference from the other neighborhood issmall. The neighbor nodes 204 and 208 may be selected to optimize thehigh two-way exchange throughput.

In some demonstrative embodiments, neighbor nodes 204 and 208 may decodethe data of packets a and d, respectively. Nodes 204 and 208 encodesand/or modulates the decoded packets a and d, respectively, for example,using a lower code rate and/or a lower constellation, e.g., compared tothe code rate and/or constellation of the transmissions received fromnodes 202 and 206.

In some demonstrative embodiments, during a second time slot, denotedT2, nodes 204 and 208 may simultaneously transmit the encoded packets aand d to nodes 206 and 202, respectively. A small number of datastreams, e.g. one, may be used due, for example, to low SNR over thelink between neighborhood 212 and 214.

In some demonstrative embodiments, strong inference may be received fromthe neighbor node transmission when the destination node receives itsdesired data. For example, during time slot T2, node 204 sends packet ato node 206 and node 208 sends packet d to node 202. Accordingly, duringthe time slot T2 the transmission from node 208 may cause interferenceto the transmission being received at node 206. However, node 206 maycancel the interference from node 208 using the data of packet d, whichis known to node 206, e.g., as described above. Accordingly, node 206may detect packet a based on the transmission from node 204 and theknown packet d. Similarly, node 202 may detect the packet d forwarded bynode 208, e.g., using the known packet a to cancel the interference fromnode 204.

FIG. 2B schematically illustrates a bidirectional wireless communicationsystem in accordance with a yet another demonstrative embodiment. Thesystem of FIG. 2B is similar to system 210 (FIG. 2A), except that thetwo-way transmission between the two neighborhoods is performed duringthe time slot T1, and the message forward inside the neighborhood isperformed during the time slot T2. For example, during time slot T1,nodes A and D simultaneously transmit the packets a and d, respectively,to nodes C and D, respectively; and during the time slot T2, nodes C andB simultaneously forward the packets a and d, respectively, to nodes Dand A, respectively.

Referring back to FIG. 2A, in some demonstrative embodiments, nodes 202and 204 may each have four antennas. During time slot T1 node 202 mayuse all four antennas to transmit four streams of data representing thepacket a to node 204. Node 204 may detect the packet a, for example, byestimating the channel between nodes 202 and 204.

In some demonstrative embodiments, during the time slot T2, node 204 maytransmit the detected packet a to node 206, for example, by using allfour antennas of node 204 to send only one data stream, e.g., due to lowSNR. Node 204 may additionally form three radiation nulls directed tothree antennas of node 202 (“the nulled antennas”). Accordingly, node202 may receive substantially no interference from node 204 via thethree nulled antennas of node 202. Node 202 may use the three nulledantennas to receive the transmission of packet d from node 208. Usingonly the three nulled antennas out of the four antennas of node 202 mayresult in a reduction in the receive power at node 202, e.g., by 1.3 dB.However, the two-way multiplexing gain allowed by system 210 may morethan compensate the SNR loss in term of throughput.

In some demonstrative embodiments, node 204 may null distinctthree-antenna groups of the four antennas of node 202. Node 202 may usesthe alternately nulled antennas to receive the transmission of packet dfrom node 208, while node 204 may use a different spatial channel totransmit the single stream representing the packet a to node 206.Therefore, both node 202 and node 204 may maintain spatial diversity.

In some demonstrative embodiments node 202 may perform receive nullingduring the time slot T2. For example, node 204 may transmit the packet ato node 206 over at least one spatial channel, e.g., one or twobeamformed channels; and node 202 may null the at least one spatialchannel when receiving the transmission of the packet d from node 208.Such receive nulling may reduce, for example, the received SNR by 0.9dB, e.g., based on a Non-Line-Of-Sight (NLOS) channel model of WLAN.This reduction may be negligible compared to the throughput doublingenabled by system 210. The receive nulling at node 202 may be performed,for example, at analog level, e.g., before Analog-to-Digital-Conversion(ADC), in order to reduce a dynamic range of the ADC.

In some demonstrative embodiments, nodes 204 and/or 208 may be selectedto be located between nodes 202 and 206. Such a selection may reduce theEVM requirement and/or the dynamic range of the ADC. For example, therequirement and/or dynamic range of the ADC may be reduces as the signalstrengths from node 204 or 208 to nodes 202 and 206 get close.

Reference is now made to FIG. 3A, which schematically illustrates abidirectional wireless communication system 300 in accordance with yetanother demonstrative embodiment.

In some demonstrative embodiments, communication system 300 may includea first node 302, denoted A; a second node 304, denoted B; a third node306, denoted D; and a fourth node 308, denoted C, as described in detailbelow.

In some demonstrative embodiments, nodes 302 and 304 may includeneighboring nodes as part of a first neighborhood 312, e.g., a firstwireless communication cell; and nodes 306 and 308 may includeneighboring nodes as part of a second neighborhood 314, e.g., a secondwireless communication cell.

In some demonstrative embodiments, system 300 may exchange a firstpacket, denoted a, from node 302 to node 306; and a second packet,denoted d, from node 306 to node 302, for example, during twocommunication time slots, e.g., as described below.

In some demonstrative embodiments, during a first time slot, denoted T1,nodes 302 and 306 may transmit the packets a and d, respectively, tonodes 304 and 308, respectively, e.g., substantially simultaneously.Nodes 302 and 306 may transmit the packets a and d using high datarates. MIMO transmission may be employed due to high SNR. Thetransmissions of the packets a and d from nodes 302 and 306 may beperformed according to a time division scheme, or simultaneously, e.g.,if interference from the other neighborhood is small. The neighbor nodes304 and 308 may be selected to optimize the high two-way exchangethroughput.

In some demonstrative embodiments, during the time slot T1 node 304 mayreceive, for example, a superimposition (“the first superimposedtransmission”) of the packets a and d, e.g., g_(A→B)a+g_(D→B)d, whereing_(A→B) denotes a channel response between the nodes A and B, andg_(D→B) denotes a channel response between the nodes D and B; and node308 may receive a superimposition (“the second superimposedtransmission”) of the packets a and d, e.g., g_(A→C)a+g_(D→C)d, whereing_(A→C) denotes a channel response between the nodes A and C, andg_(D→C) denotes a channel response between the nodes D and C.

According to some embodiments, nodes 304 and 308 may not be required todecode the data of packets a and d, respectively, e.g., as describedbelow. The packet a may be overheard by the node D, and/or the packet dmay be overheard by the node B, e.g., since g_(D→B)d is included ing_(A→B)a+g_(D→B)d, and the overheard term g_(A→C)a is included ing_(A→C)a+g_(D→C)d

In some demonstrative embodiments, during a second time slot, denotedT2, nodes 304 and 308 may amplify and forward the first and secondsuperimposed transmissions, respectively, to nodes 306 and 302,respectively. The communication links between nodes 304 and 306, andbetween nodes 308 and 302 may be relatively poor compared tocommunication links between nodes 302 and 304 and between 306 and 308,e.g., as described above. In some demonstrative embodiments, nodes 304and/or 308 may code an analog signal or symbol of the forwardedsuperimposed transmissions by simple repetition and/or space-time codes,e.g., to increase SNR and/or reliability. For example, nodes 304 and/or308 may use a received, base-band, analog signal on each antenna as aninput symbol to a repetition code or space-time code.

In some demonstrative embodiments, node 302 may detect the packet dbased, for example, on the second superimposed transmission forwarded bynode 308 and the data of packet a, which is known to node 302; and node306 may detect the packet a based, for example, on the firstsuperimposed transmission forwarded by node 304 and the data of packetd, which is known to node 306. For example, during the time slot T2 node302 may receive the forwarded transmission(g_(D→C)g_(C→A)+g_(D→B)g_(B→A))d+(g_(A→C)g_(C→A)+g_(A→B)g_(B→A))a; andnode 306 may receive the forwarded transmission(g_(A→B)g_(B→D)+g_(A→C)g_(C→D))a+(g_(D→C)g_(C→D)+g_(D→B)g_(B→D))d. Node302 may estimate, for example, the interference channel responsesg_(A→C)g_(C→A)+g_(A→B)g_(B→A), by performing the interference mitigationdescribed above with reference to FIG. 1. Node 302 may then remove theinterference from the forwarded transmission using the estimated channelresponses and the data of packet al. After interference cancellation,node 302 may use the remaining signal to decode the data of packet d.Node 306 may perform similar interference mitigation to decode the dataof packet al.

FIG. 3B schematically illustrates a bidirectional wireless communicationsystem in accordance with a yet another demonstrative embodiment. Thesystem of FIG. 3B is similar to system 310 (FIG. 3A), except that thetwo-way transmission between the two neighborhoods is performed duringthe time slot T1, and the message forward inside the neighborhood isperformed during the time slot T2.

In some demonstrative embodiments, nodes 302, 304, 306 and/or 308 mayimplement one or more of the nulling schemes described above withreference to FIG. 2A, e.g., in order to avoid high requirements on EVMand/or dynamic range.

Reference is made to FIG. 4, which schematically illustrates abidirectional wireless communication system 400 in accordance with yetanother demonstrative embodiment.

In some demonstrative embodiments, communication system 400 may includea first node 402, denoted A; a second node 404, denoted B; a third node406, denoted C; and a relay node 408, denoted R, as described in detailbelow.

In some demonstrative embodiments, system 400 may exchange a firstpacket, denoted a, from node 402 to nodes 404 and 406; a second packet,denoted b, from node 404 to nodes 402 and 406; and a third packet,denoted c, from node 406 to nodes 402 and 404, via relay node 408, forexample, during four communication time slots, e.g., as described below.

In some demonstrative embodiments, during a first time slot, denoted T1,nodes 402 and 404 may transmit the packets a and b, respectively, torelay node 408, e.g., substantially simultaneously. Relay node 408 mayreceive the superimposed transmission g_(A→R)a+g_(B→R)b (“the firstsuperimposed transmission”). In some embodiments, node 406 may overheara superimposed transmission. Such overhearing may improve theperformance of system 400, e.g., by using H-ARQ combining as describedabove with reference to FIG. 1.

In some demonstrative embodiments, during a second time slot, denotedT2, relay node 408 may amplify and broadcast the first superimposedtransmission to nodes 402, 404 and 406. Repetition coding or space-timecoding may be implemented. Additionally or alternatively, multiple relaynodes may be used to receive and transmit simultaneously to increasetransmission power, e.g., as described above.

In some demonstrative embodiments, nodes 402, 404 and 406 may receivetransmissions g_(R→A)g_(A→R)a+g_(R→A)g_(B→R)b,g_(R→B)g_(A→R)a+g_(R→B)g_(B→R)b and g_(R→C)g_(A→R)a+g_(R→C)g_(B→R)b,respectively. Nodes 402 and 603 may detect the packets b and a,respectively, for example, by applying the interference mitigationtechnique described above to the received transmissionsg_(R→A)g_(A→R)a+g_(R→A)g_(B→R) and g_(R→B)g_(A→R)a+g_(R→B)g_(B→R)b,respectively.

In some demonstrative embodiments, during a third time slot, denoted T3,nodes 402 and 406 may transmit the packets a and c, respectively, torelay node 408, e.g., substantially simultaneously. Relay node 408 mayreceive the superimposed transmission g_(A→R)a+g_(C→R)c (“the secondsuperimposed transmission”).

In some demonstrative embodiments, during a fourth time slot, denotedT4, relay node 408 may amplify and broadcast the second superimposedtransmission to nodes 402, 404 and 406.

In some demonstrative embodiments, nodes 402, 404 and 406 may receivethe transmissions g_(R→A)g_(A→R)a+g_(R→A)g_(C→R)c,g_(R→B)g_(A→R)a+g_(R→B)g_(C→R)c and g_(R→C)g_(A→R)a+g_(R→C)g_(C→R)c,respectively. Based on the transmission g_(R→A)g_(A→R)a+g_(R→A)g_(C→R)c,node 406 may remove the interference from packet c and detect the packeta, e.g., as described above. In addition, node 406 may remove theinterference from packet a in the previously received transmissiong_(R→C)g_(A→R)a+g_(R→C)g_(B→R)b, e.g., using the detected packet a, todetect the packet b. Based on the transmissiong_(R→A)g_(A→R)a+g_(R→A)g_(C→R)c, node 402 may remove the interferencefrom packet a and detect packet c. Based on the transmissiong_(R→A)g_(A→R)a+g_(R→B)g_(C→R)c and the detected packet a, node 404 mayremove the interference from packet a and detect packet c.

In other embodiments other exchange schemes may be implemented toexchange the packets a, b, and c between nodes 402, 404, and 406. Forexample, nodes 402, 404 and 406 may simultaneously transmit packets a,b, and c, respectively, to relay node 406 during the time slot T1. Inthe time slot T4 nodes 404 and 406 may simultaneously transmit packets band (-c), respectively, wherein (-c) is a phase-reversion of the packetc.

Reference is made to FIG. 5, which schematically illustrates a flowchart of a method of wireless communication in accordance with onedemonstrative embodiment. Although embodiments of the invention are notlimited in this respect, in some demonstrative embodiments one or moreoperations of the method of FIG. 5 may be implemented by system 100(FIG. 1) and/or system 400 (FIG. 4).

As indicated at block 502, the method may include receiving by awireless communication relay node a superimposed transmissioncorresponding to two transmissions from a first set of two wirelesscommunication nodes.

As indicated at block 504, the method may also include broadcasting fromthe relay node to a second set of two or more wireless communicationnodes a broadcast transmission including the superimposed transmission.The second set of wireless communication nodes may include at least onewireless communication node, which is not included in the first set ofwireless communication nodes.

In some demonstrative embodiments, the first set includes first andsecond wireless communication nodes, and the second set includes thirdand fourth wireless communication nodes. In one example, the twotransmissions include a first transmission from the first node to therelay node including a first packet intended for the third node; and asecond transmission from the second node to the relay node including asecond packet intended for the fourth node. For example, relay node 110(FIG. 1) may receive a superimposed transmission corresponding totransmissions from nodes 102 (FIG. 1) and 108 (FIG. 1); and transmit thebroadcast transmission to nodes 104 (FIG. 1) and 106 (FIG. 1), e.g., asdescribed above.

As indicated at block 506, in some demonstrative embodiments the methodmay also include overhearing the first and second transmissions by thefourth and third nodes, respectively. For example, nodes 104 (FIG. 1)and 106 (FIG. 1) may overhear the first and second transmissions.

In some demonstrative embodiments, the first set includes first andsecond wireless communication nodes, and the second set includes thefirst and second wireless communication nodes and a third wirelesscommunication node. In one example, the two transmissions include afirst transmission from the first node to the relay node including afirst packet, and a second transmission from the second node to therelay node including a second packet. For example, relay node 408 (FIG.4) may receive the first superimposed transmission from nodes 402 (FIG.4) and 404 (FIG. 4), e.g., as described above with reference to FIG. 4.

As indicated at block 512, the method may also include receiving by therelay node another superimposed transmission corresponding to the firsttransmission and to a third transmission including a third packet fromthe third wireless communication node. For example, relay node 408 (FIG.4) may receive the second superimposed transmission from nodes 402 (FIG.4) and 406 (FIG. 4), e.g., as described above with reference to FIG. 4.

As indicated at block 514, the method may also include broadcasting fromthe relay node to the first, second and third wireless communicationnodes a broadcast transmission including the other superimposedtransmission. For example, relay node 408 (FIG. 4) may broadcast thesecond superimposed transmission to nodes 402 (FIG. 4), 404 (FIG. 4) and406 (FIG. 4), e.g., as described above with reference to FIG. 4.

As indicated at block 508, the method may also include detecting atleast first and second packets exchanged by the nodes. In one example,the method may include detecting the first packet at the third nodebased on the first transmission and the broadcast transmission; anddetecting the second packet at the fourth node based on the secondtransmission and the broadcast transmission, e.g., as described abovewith reference to FIG. 1. In another example, the method may includedetecting the second and third packets at the first node; detecting thefirst and third packets at the second node; and detecting the first andsecond packets at the third node, e.g., as described above withreference to FIG. 4.

Other suitable operations may be used, and other suitable orders ofoperation may be used.

Reference is made to FIG. 6, which schematically illustrates a flowchart of a method of wireless communication in accordance with anotherdemonstrative embodiment. Although embodiments of the invention are notlimited in this respect, in some demonstrative embodiments one or moreoperations of the method of FIG. 5 may be implemented by the systems ofFIGS. 2A, 2B, 3A and/or 3B.

As indicated at block 602, the method may include simultaneouslytransmitting a first transmission from a first node to a second node anda second transmission from a third node to a fourth node, wherein thefirst transmission comprises a first packet intended for the third node,and wherein the second transmission comprises a second packet intendedfor the first node.

As indicated at block 604, the method may also include simultaneouslytransmitting a third transmission from the second node to the third nodeand a fourth transmission from the fourth node to the first node,wherein the third transmission represents the first packet, and whereinthe fourth transmission represents the second packet.

In some demonstrative embodiments, the third transmission may include asuperimposed transmission of the first and second transmissions receivedat the second node, and the fourth transmission may include asuperimposed transmission of the first and second transmissions receivedat the fourth node, e.g., as described above with reference to FIGS. 3Aand/or 3B.

As indicated at block 606, in some embodiments the method may includedecoding the first transmission at the second node to determine a firstdecoded packet; and decoding the second transmission at the fourth nodeto determine a second decoded packet. The third and fourth transmissionsmay include the first and second decoded packets, respectively, e.g., asdescribed above with reference to FIGS. 2A and/or 2B.

As indicated at block 608, in some embodiments transmitting the thirdtransmission may include transmitting from the second node to the thirdnode at least one data stream representing the first packet; andtransmitting from the second node a plurality of nulling streams to bereceived by a respective plurality of antennas of the first node,wherein the plurality of antennas are to receive the fourthtransmission, e.g., as described above with reference to FIG. 2A.

As indicated at block 610, in some embodiments transmitting the thirdtransmission may include transmitting from the second node to the thirdnode at least one beam-formed transmission representing the first packetover at least one beam-formed channel, respectively. The method may alsoinclude performing receive nulling by the first node over the at leastone beam-formed channel, e.g., as described above with reference to FIG.2A.

Some embodiments, for example, may take the form of an entirely hardwareembodiment, an entirely software embodiment, or an embodiment includingboth hardware and software elements. Some embodiments may be implementedin software, which includes but is not limited to firmware, residentsoftware, microcode, or the like.

Furthermore, some embodiments may take the form of a computer programproduct accessible from a computer-usable or computer-readable mediumproviding program code for use by or in connection with a computer orany instruction execution system. For example, a computer-usable orcomputer-readable medium may be or may include any apparatus that cancontain, store, communicate, propagate, or transport the program for useby or in connection with the instruction execution system, apparatus, ordevice.

In some embodiments, the medium may be an electronic, magnetic, optical,electromagnetic, infrared, or semiconductor system (or apparatus ordevice) or a propagation medium. Some demonstrative examples of acomputer-readable medium may include a semiconductor or solid-statememory, magnetic tape, a removable computer diskette, a RAM, a ROM, arigid magnetic disk, and an optical disk. Some demonstrative examples ofoptical disks include CD-ROM, CD-R/W, and DVD.

In some embodiments, a data processing system suitable for storingand/or executing program code may include at least one processor coupleddirectly or indirectly to memory elements, for example, through a systembus. The memory elements may include, for example, local memory employedduring actual execution of the program code, bulk storage, and cachememories which may provide temporary storage of at least some programcode in order to reduce the number of times code must be retrieved frombulk storage during execution.

In some embodiments, input/output or I/O devices (including but notlimited to keyboards, displays, pointing devices, etc.) may be coupledto the system either directly or through intervening I/O controllers. Insome embodiments, network adapters may be coupled to the system toenable the data processing system to become coupled to other dataprocessing systems or remote printers or storage devices, for example,through intervening private or public networks. In some embodiments,modems, cable modems and Ethernet cards are demonstrative examples oftypes of network adapters. Other suitable components may be used.

Functions, operations, components and/or features described herein withreference to one or more embodiments, may be combined with, or may beutilized in combination with, one or more other functions, operations,components and/or features described herein with reference to one ormore other embodiments, or vice versa.

While certain features of the invention have been illustrated anddescribed herein, many modifications, substitutions, changes, andequivalents may occur to those skilled in the art. It is, therefore, tobe understood that the appended claims are intended to cover all suchmodifications and changes as fall within the true spirit of theinvention.

1. A method comprising: receiving by a wireless communication relay nodea superimposed transmission corresponding to first and secondtransmissions from first and second wireless communication nodes,respectively, wherein said first transmission includes a first packetintended at least for a third wireless communication node; andbroadcasting a broadcast transmission including said superimposedtransmission from said relay node to a set of two or more wirelesscommunication nodes including said third wireless communication node. 2.The method of claim 1, wherein said set includes a fourth wirelesscommunication node.
 3. The method of claim 2, wherein said secondtransmission includes a second packet intended for said fourth node. 4.The method of claim 3 comprising: overhearing said first and secondtransmissions by said fourth and third nodes, respectively; detectingsaid first packet at said third node based on said first transmissionand the broadcast transmission; and detecting said second packet at saidfourth node based on said second transmission and the broadcasttransmission.
 5. The method of claim 1, wherein said set includes saidfirst and second wireless communication nodes.
 6. The method of claim 5,wherein said first packet is intended for said second and third nodes,and wherein said second transmission includes a second packet intendedfor said first and third nodes.
 7. The method of claim 6 comprising:receiving by said relay node another superimposed transmissioncorresponding to said first transmission and to a third transmissionincluding a third packet from said third wireless communication node;and broadcasting from said relay node to said first, second and thirdwireless communication nodes a broadcast transmission including theother superimposed transmission.
 8. The method of claim 7 comprising:detecting said second and third packets at said first node; detectingsaid first and third packets at said second node; and detecting saidfirst and second packets at said third node.
 9. A method comprising:simultaneously transmitting a first transmission from a first node to asecond node and a second transmission from a third node to a fourthnode, wherein said first transmission comprises a first packet intendedfor said third node, and wherein said second transmission comprises asecond packet intended for said first node; and simultaneously receivingat said third and first nodes a third transmission from said second nodeand a fourth transmission from said fourth node, respectively, whereinsaid third transmission corresponds to said first packet, and whereinsaid fourth transmission corresponds to said second packet.
 10. Themethod of claim 9, wherein said third transmission comprises asuperimposed transmission of said first and second transmissionsreceived at said second node, and wherein said fourth transmissioncomprises a superimposed transmission of said first and secondtransmissions received at said fourth node.
 11. The method of claim 9comprising: decoding said first transmission at said second node todetermine a first decoded packet; and decoding said second transmissionat said fourth node to determine a second decoded packet, wherein saidthird and fourth transmissions comprise said first and second decodedpackets, respectively.
 12. The method of claim 9 comprising:transmitting from said second node to said third node at least one datastream corresponding to said first packet; and transmitting from saidsecond node a plurality of nulling streams to be received by arespective plurality of antennas of said first node, wherein saidplurality of antennas are to receive said fourth transmission.
 13. Themethod of claim 9 comprising transmitting from said second node to saidthird node at least one beam-formed transmission corresponding to saidfirst packet over at least one beam-formed channel, respectively, andwherein said method comprises performing receive nulling by said firstnode over said at least one beam-formed channel.
 14. The method of claim9, wherein said first and second nodes comprise nodes of a firstneighborhood, and wherein said third and fourth nodes comprise nodes ofa second neighborhood.
 15. The method of claim 9, wherein said first andfourth nodes comprise nodes of a first neighborhood, and wherein saidsecond and third nodes comprise nodes of a second neighborhood.